const obj = {
    name: 'lisi',
    fn1: function () {
        setTimeout(function () {
            console.log(this.name)   //undefined
        })
    },
    fn2: function(){
        setTimeout(() => {
            console.log(this.name)  //lisi
        })
    },
    fn3:function(){
        setTimeout(function () {
            console.log(this.name)   //lisi
        }.bind(this),0)
    },
    fn4:function(){
        const _this = this
        setTimeout(function () {
            console.log(_this.name)   //lisi
        }.bind(this),0)
    }
}
obj.fn1()
obj.fn2()
obj.fn3()
obj.fn4()